/**
 * 应用程序全局接口
 */
export class App {
  /**
   * 全局地图实例
   */
  static vueMap = null;

  /**
   * 应用程序设置
   */
  static options = null;

  /**
   * 初始化应用程序接口
   * @param {Map} map 地图实例
   * @param {Object} options 应用程序选项
   */
  static initApp({ map, options }) {
    App.vueMap = map;
    App.options = options;
  }

  /**
   * 获取Leaflet地图对象
   */
  static getMap() {
    if (!App.vueMap) {
      throw Error('App未初始化！');
    }
    return App.vueMap.$mapObject;
  }
}

export default App;
